package com.wunong.smart.address.domain.service;

import com.wunong.smart.address.application.request.DeleteUserAddressRequest;
import com.wunong.smart.address.application.request.SetDefaultUserAddressRequest;
import com.wunong.smart.address.application.request.UpdateUserAddressRequest;

/**
 * 用户地址域服务
 *
 * @author create by zealot.zt
 */
public interface UserAddressDomainService {

    /**
     * 保存
     *
     * @param request
     * @return
     */
    Long save(UpdateUserAddressRequest request);

    /**
     * 更新
     *
     * @param request
     * @return
     */
    Void update(UpdateUserAddressRequest request);

    /**
     * 删除
     *
     * @param request
     * @return
     */
    Void delete(DeleteUserAddressRequest request);

    /**
     * 设为默认
     *
     * @param request
     * @return
     */
    Void setDefault(SetDefaultUserAddressRequest request);

}
